The present invention relates to methods and apparatus for displaying data on a computer display screen. More particularly, the present invention relates to methods and apparatus for displaying data items of a related data set in two display modes to maximize, in the first mode, the number of data items simultaneously displayed and, in the second mode, the details related to the data items of the data set.
With the rising popularity of computers and sophisticated software programs, computer users are challenged with ever-increasing volumes of data. Along with the increased volumes of data, there is an increased need to present and manage data in an organized, user friendly, and easily understood manner.
Computerized databases, which are widely known in the art, represent an attempt to classify, store, process, and display data in an organized fashion. For example, there exists in the art a class of computerized database programs known as personal information managers (PIMs). Broadly speaking, a PIM represents a program for keeping track of information related to people and events that is of interest to its user. In a PIM, related data items pertaining to a person or an event are kept together in a database record, hundreds or more of which may be managed by the PIM. Each record may be thought of as a related data set since all the data items in a given record relate to a particular person or event and are logically organized as one unit. It should be borne in mind that although a PIM is employed herein to simplify the illustration of the prior art as well as the features and advantages of the present invention, the invention disclosed herein is not limited to PIMs and may in fact apply to any software programs that need to display a large number of related data items on a computer display screen.
When a record's data items are displayed on the computer display screen, the challenge has been to display as much of the record's data items as possible without unduly cluttering up the display screen and adversely impacting readability. With reference to FIG. 1, there is illustrated a representative prior art display window (on a computer display screen) for displaying the data items of a PIM's record. In the prior art, each displayed data item typically occupies a distinct data field in the display screen. For example, the name of the person for whom the record is kept occupies a predefined name field; his addresses occupy other predefined address fields; and his phone numbers occupy yet other predefined phone number fields on the computer display screen.
To aid novice users in identifying the significance of each displayed data item, the data fields are usually labeled. With reference to FIG. 1, for example, a person's work address is shown with both the work address data item and a data label for "work." The work address data is further shown in distinct data fields, each of which is associated with a specific data label such as "street," "city," "state," "zip code," "country," and the like.
Although this prior art display method is helpful to novice users, the presence of the data labels, which occupy display screen space, limits the number of data items that can be simultaneously displayed on the computer display screen. It is recognized that after some exposure to the record's data, most users can, even without the aid of data labels, ascertain the significance of some displayed data items merely from their contents and/or their relative position on the display screen. For example, most users are quite capable of recognizing that "Santa Clara" relates to a person's address and not to his age. It is recognized that for these users, some of the data labels may simply be omitted from the display screen without adversely impacting usability. When fewer data labels are displayed, the number of data items that can be simultaneously displayed on the screen is increased without unduly cluttering up the display screen.
On the other hand, there are disadvantages associated with a data display technique that simply omits from view the data labels all the time and does not provide a way for the user to access the data labels associated with the displayed data items. For example, novice users often desire to view the data labels along with the displayed data items to familiarize themselves with the meaning and relative location of the displayed data. As another example, users may want to ensure when editing a data item that they are editing in the correct data field since data fields are often employed, as is known, as keys for sorting and/or other types of data processing tasks. The presence of data labels are helpful in these instances.
Further, it is also recognized that some data items in a record are more critical, i.e., more frequently needed or more important, to the database user than other noncritical data items. If the data items of a record are displayed without regard to their relative importance, there may not be sufficient room in the display screen to display all the critical data items simultaneously. When this happens, the user loses the ability to conveniently view all the critical data items simultaneously on the display screen.
Outside of the database context, it is recognized that as software application programs become more sophisticated, a large number of functions may be offered. These functions may require a large number of user manipulable controls to adequately control all aspects of the program. Also, the results achieved by these functions may be available for display to the user as a set of status data. In this case, the user manipulable controls and the status data may be thought of as data items belonging in a related data set since they facilitate controlling the functions of the program.
In some programs, however, the number of controls and the set of status data may be so large that it is impractical to display all the controls and status data items at once on the display screen. On the other hand, when selected status data items and/or controls are not displayed at all, the user may lose the ability to ascertain the status of aspects of the program and/or the ability to access the non-displayed functions.
In view of the foregoing, what is desired is improved methods and apparatus for displaying data items of a related data set on a computer display screen.